{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\n",
    "#数据\n",
    "一、数据类型\n",
    "数据集的不同表现在很多方面。例如，用来描述数据对象的属性可以具有不同的类型---定量的或定性的，并且数据集可能具有特定的性质，例如，某些数据集包含时间序列或彼此之间具有明显联系的对象。毫不奇怪，数据的类型决定我们应使用何种工具和技术来分析数据。此外，数据挖掘研究常常是为了适应新的应用领域和新的数据类型的需要而展开的。\n",
    "\n",
    "通常，数据集可以看做数据对象的集合。数据对象有时也叫做记录、点、向量、模式、时间、案例、样本、观测或实体。数据对象用一组刻画对象基本特性的属性描述。属性有时也叫做变量、特性、字段、特征或维。\n",
    "\n",
    "1.属性和度量\n",
    "1.1 什么是属性\n",
    "属性（attribute）是对象的性质或特性，它因对象而异，或随时间而变化。\n",
    "\n",
    "测量标度（measurement scale）是将数值或符号值与对象的属性相关联的规则（函数）。\n",
    "\n",
    "1.2 属性类型\n",
    "属性的性质不必与用来度量它的值的性质相同。换句话说，用来代表属性的值可能具有不同于属性本身的性质，并且反之亦然。\n",
    "\n",
    "属性的类型告诉我们，属性的哪些性质反映在用于测量它的值中。知道属性的类型是重要的，因为它告诉嗯测量值的哪些性质与属性的基本性质一致，从而使得我们可以避免诸如计算雇员的平均ID这样的愚蠢行为。注意，通常将属性的类型称做测量标度的类型。\n",
    "\n",
    "1.3 属性的不同类型\n",
    "给定这些性质，可以定义四种属性类型：标称、序数、区间和比率。下表给出这些类型的定义，以及每种类型上有哪些合法的统计操作等信息。每种属性类型拥有其上方属性类型上的所有性质和操作。因此，对于标称、序数和区间属性合法的任何性质或操作，对于比率属性也合法.\n",
    "\n",
    "标称和序数属性统称分类的（categorical）或定性的（qualitative）属性。顾名思义，定性属性不具有数的大部分性质。即便使用数（即整数）表示，也应当像对待符号一样对待他们。其余两种类型的属性，即区间和比率属性，通常定量的（quantitative）或数值的（numeric）属性。定量属性用数表示，并且具有数的大部分性质。注意，定量属性可以使整数值或连续值。\n",
    "\n",
    "1.4 用值得个数描述属性\n",
    "区分属性的一种独立方法时根据属性可能取值的个数来判断。\n",
    "\n",
    "离散的（discrete）离散属性具有有限个值或无限可数个值。这样的属性可以使分类的，如邮政编码或ID号，也可以是数值的，如计数。通常，离散属性用整数变量表示。二元属性（binary attribute）是离散属性的一种特殊情况，并只接受两个值，如真假、是否、男女或01。通常，二元属性用布尔变量表示，或者用只取两个值0或1的整型变量表示。\n",
    "\n",
    "连续的（continuous）连续属性是取实数值的属性。如温度、高度或重量等属性。通常，连续属性用浮点变量表示。实践中，实数值只能用有限的精度测量和表示。\n",
    "\n",
    "1.5 非对称的属性\n",
    "对于非对称的属性，出现非零属性值才是重要的。考虑这样一个数据集，其中每个对象是一个学生。而每个属性记录学生是否选修大学的某个课程。对于某个学生，如果他选修了对应于某属性的课程，则该属性取值1，否则取值0。由于学生只选修所有可选课程中的一小部分，这种数据集的大部分值为0。因此，关注非零值将更有意义、更有效。否则，如果在学生们不选修的课程上做比较，则大部分学生都非常相似。只有非零值才重要的二元属性是非对称的二元属性。这类属性对于关联分析特别重要。\n",
    "\n",
    "2 数据集的类型\n",
    "数据集的类型有多种，并且随着数据挖掘的发展和成熟，还会有更多类型的数据集将用于分析。本节介绍一些很常见的类型。为方便起见，将数据集类型分成三组：记录数据、基于图形的数据和有序的数据。这些分类不能涵盖所有的可能性，肯定还存在其他的分组。\n",
    "\n",
    "2.1 数据集的一般特性\n",
    "在提供特定类型数据集的细节之前，先讨论适用于许多数据挖掘的三个特性，它们对数据挖掘技术具有重要影响，它们是维度、稀疏性和分辨率。\n",
    "\n",
    "维度（dimensionality）数据集的维度是数据集中的对象具有的属性数目。低维度数据往往与中、高维度数据有质的不同。确实，分析高维数据有时会陷入所谓维度灾难（curse of dimensionality）。正因为如此，数据预处理的一个重要动机就是减少维度，称为维归约（dimensionality reduction）。这些问题会在后面更深入地讨论。\n",
    "\n",
    "稀疏性（sparsity）有些数据集，如具有非对称特征的数据集，一个对象的发部分属性上的值都为0；在许多情况下，非零项还不到1%。实际上，稀疏性是一个优点，因为只有非零值才需要存储和处理。这将节省大量的计算时间和存储空间。此外，有些数据挖掘算法仅适合处理稀疏数据。\n",
    "\n",
    "分辨率（resolution）常常可以在不同的分辨率下得到数据，并且在不同的分辨率下数据的性质也不同。例如，在几米的分辨率下，地球表面看上去很不平坦，但在数十公司的分辨率下去相对平坦。数据的模式也依赖于分辨率，如果分辨率太高，模式可能看不出，或者掩埋在噪声中；如果分辨率太低，模式可能不出现。例如，几小时记录一下气压变化可以反映出风暴等天气系统的移动；而在月的标度下，这些现象就检测不到。\n",
    "\n",
    "二、数据质量\n",
    "数据挖掘使用的数据常常是为其他用途收集的，或者在收集时未明确其目的。因此，数据挖掘常常不能“在数据源头控制质量”。相比之下，统计学的实验设计或调查往往其数据质量都达到了一定的要求。由于无法避免数据质量问题，因此数据挖掘着眼于两个方面：（1）数据质量问题的检测和纠正，（2）使用可以荣登低质量数据的算法。第一步的检测和纠正，通常称作数据清理\n",
    "\n",
    "1.测量和数据收集问题\n",
    "期望数据完美是不现实的。由于人的错误、测量设备的限制或数据收集过程的漏洞都可能导致问题。数据的值乃至这个数据对象都可能会丢失。在有些情况下，可能有不真实的或重复的对象，即对应于单个“实际”对象出现了多个数据对象。例如，对于一个最近住过两个不同地方的人，可能有两个不同的记录。即使所有的数据都不缺，并且“看上去很好”，也可能存在不一致，如一个人身高2m，但体重只有2kg。\n",
    "\n",
    "1.1 量误差和数据收集错误\n",
    "测量误差（measurement error）是指测量过程中导致的问题。一个常见的问题是：在某种程度上，记录的值与实际值不同。对于连续属性，测量值与实际值的差称为误差（error）。数据收集错误（data collection error）是指诸如遗漏数据对象或属性值，或不当地包含了其他数据对象等错误。例如，一种特定种类动物研究可能包含了相关种类的其他动物，它们只是表面上与要研究的种类相似。测量误差和数据收集错误可能是系统的也可能是随机的。\n",
    "\n",
    "我们只考虑一般的错误类型。在特定的领域，总有些类型的错误是常见的，并且常常有很好的技术来检测并纠正这些错误。例如，人工输入数据时键盘录入错误是常见的，因此许多数据输入程序具有检测技术，并且通过人工干预纠正这类错误。\n",
    "\n",
    "1.2 噪声和伪像\n",
    "噪声是测量误差的随机部分。这可能涉及值被扭曲或加入了谬误对象。下图显示被随机噪声干扰前后的时间序列。如果在时间序列上添加更多的噪声，形状将会消息。如下图显示了三组添加一些噪点前后的数据集。注意，有些噪点与非噪声点混在一起。\n",
    "\n",
    "“噪声”通常用于包含时间或空间分量的数据。在这些情况下，常常可以使用信号或图像处理技术降低噪声，从而帮助发现可能“淹没在噪声中”的模式。尽管如此，完全消除噪声通常是困难的，而许多数据挖掘工作都关注设计鲁棒算法，即在噪声干扰下也能产生可以接受的结果。\n",
    "\n",
    "数据错误可能是更确定性现象的结果，如一组照片在同一地方出现条纹。数据的这种确定性失真常称为伪像。\n",
    "\n",
    "1.3 精度、偏倚和准确率\n",
    "在统计学和实验科学中，测量过程和结果数据的质量用精度和偏倚度量。给出标准的定义，随后简略加以讨论。对下面的定义，假定对相同的基本量进行重复测量，并使用测量值集合计算均值（平均值），作为实际值的估计。\n",
    "\n",
    "精度（precision）（同一个量的）重复测量值之间的接近程度。\n",
    "\n",
    "偏倚（bias） 测量值与被测量值之间的系统的变差。\n",
    "\n",
    "精度通常用值集合的标准差度量，而偏倚用值集合的均值与测出的已知值之间的差度量。只有那些通过外部手段能够得到测量值的对象，偏倚才是可确定的。假定我们有1克质量的标准实验室种类，并且想评估实验室的新天平的精度和偏倚。我们称重5次，得到下列值：{1.015，0.990，1.013，1.001，0.986}。这些值得均值是1.001。因此偏倚是0.001.用标准差度量，精度是0.013。\n",
    "\n",
    "准确率（accuracy） 被测量的测量值与实际值之间的接近度。\n",
    "\n",
    "准确率的一个重要方面是有效数字（significant digit）的使用，其目标是仅使用数据精度所能确定的数字位数表示测量或计算结果。例如，对象的长度用最小刻度为毫米的米尺测量，则我们只能记录最接近毫米的长度数据，这种测量的精度为±0.5mm。\n",
    "\n",
    "1.4 离群点\n",
    "离群点（outlier）是在某种意义上具有不同于数据集中其他大部分数据对象的特征的数据对象，或是相对于该属性的典型值来说不寻常的属性值。我们也称其为异常（anomalous）对象或异常值。有许多定义离群点的方法，并且统计学和数据挖掘已经提出了很多不同的定义。此外，区别噪声和离群点这两个概念是非常重要的。离群点可以使合法的数据对象或值。因此，不像噪声，离群点本身有时是人们感兴趣的对象。例如，欺诈和网络攻击检测中，目标就是从大量正常对象或事件中发现不正常的对象和事件。第10章更详细地讨论异常检测。\n",
    "\n",
    "1.5 遗漏值\n",
    "一个对象遗漏一个或多个属性的情况并不少见。有时可能会出现信息收集不全的情况。例如有的人拒绝透漏年龄或体重。还有些情况下，某些属性并不能用于所有对象，例如表格常常有条件选择部分，仅当填表人以特定的方式回答问题的时候，条件选择部分才需要填写。但为简单起见存储了表格的所有字段。无论何种情况，在数据分析时都应当考虑遗漏值。\n",
    "\n",
    "有许多处理遗漏值的策略（和这些策略的变种），每种策略可能适用于特定的情况。这些策略在下面列出，同时我们指出它们的优缺点。\n",
    "\n",
    "删除数据对象或属性　　一种简单而有效的策略是删除具有遗漏值的数据对象。然而，即使不完整的数据对象也包含一些有用的信息，并且，如果许多对象都有遗漏值，则很难甚至不可能进行可靠的分析。尽管如此，如果某个数据集只有少量的对象具有遗漏值，则忽略它们可能是合算的。一种与之相关的策略是删除具有遗漏值的属性。然而，做这件事要小心，因为被删除的属性可能对分析是至关重要的。、\n",
    "\n",
    "1.6 不一致的值\n",
    "数据可能包含不一致的值。比如地址字段列出了邮政编码和城市名，但是又的邮政编码区域并不包含在对应的城市中。可能是人工输入该信息时录颠倒了两个数字，或许是在手写体扫描时读错了一个数字。无论导致不一致的原因是什么，重要的是能检测出来，并且如果可能的话，纠正这种错误。\n",
    "\n",
    "有些不一致类型容易检测，例如人的身高不应当是负的。有些情况下，可能需要查阅外部信息源，例如当保险公司处理赔偿要求时，它将对照顾客数据库核对赔偿单上的姓名与地址。\n",
    "\n",
    "检测到不一致后，有时可以对数据进行更正。产品代码可能有“校验”数字，或者可以通过一个备案的已知产品代码列表，复核产品代码；如果发现它不正确但接近一个已知代码，则纠正它。纠正不一致需要额外的或冗余的信息。\n",
    "\n",
    "1.7重复数据\n",
    "数据集可能包含重复或几乎重复的数据对象。许多人都收到过重复的邮件，因为它们稍微以不同的名字多次出现在数据库中。为了检测并删除这种重复，必须处理两个主要问题。首先，如果两个对象实际代表同一个对象，则对应的属性值必然不同，必须解决这些不一致的值；其次，需要避免意外地将两个相似但并非重复的数据对象合并在一起。数据去重复（deduplication）通常用来表示处理这些问题的过程。\n",
    "\n",
    "在某些情况下，两个或多个对象在数据库的属性度量上是相同的，但是仍然代表不同的对象。这种重复是合法的。但是如果某些算法设计中没有专门考虑这些属性可能相同的对象，就还是可能导致问题。"
   ]
  }
 ],
 "metadata": {
  "language_info": {
   "name": "python"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
